
/**
 * 活动相关业务接口，定义活动的增删改查等操作。
 */
package com.example.project.service;

import com.example.project.entity.Activity;
import com.example.project.result.Result;


public interface IActivityService {
    /**
     * 删除指定活动
     * @param activityId 活动ID
     * @return 操作结果
     */
    Result deleteActivity(String activityId);

    /**
     * 分页获取所有活动列表
     * @param page 页码
     * @param size 每页数量
     * @return 活动列表结果
     */
    Result listActivity(int page, int size);

    /**
     * 获取指定活动详情
     * @param activityId 活动ID
     * @return 活动详情结果
     */
    Result getActivity(String activityId);

    /**
     * 新增活动
     * @param activity 活动实体
     * @return 操作结果
     */
    Result addActivity(Activity activity);

    /**
     * 更新指定活动信息
     * @param activityId 活动ID
     * @param activity 活动实体
     * @return 操作结果
     */
    Result updateActivity(String activityId, Activity activity);

    /**
     * 根据用户名分页获取活动列表
     * @param userName 用户名
     * @param page 页码
     * @param size 每页数量
     * @return 活动列表结果
     */
    Result listActivityByUser(String userName, int page, int size);

    /**
     * 根据案例分页获取活动列表
     * @param page 页码
     * @param size 每页数量
     * @return 活动列表结果
     */
    Result listActivityByCase(int page, int size);
}
